package com.alibaba.citrus.ots.sales.plan.dto.api.request;

import com.alibaba.citrus.ots.sales.plan.dto.DimensionalityIdentityInterface;
import com.alibaba.cz.base.tool.page.PageRequest;
import lombok.Data;

import java.util.List;

/**
 * @author yuhailin
 * @description:
 * @date 2021-09-13 19:22
 */
@Data
public class PageQueryPlanLineRequest extends PageRequest implements DimensionalityIdentityInterface {
    private static final long serialVersionUID = -3084146805129884806L;
    /**
     * 月度计划ID
     */
    private String planId;

    /**
     * 渠道编码
     */
    private String channelCode;

    /**
     * 组织业务单位编码
     */
    private String orgBusinessUnitCode;

    /**
     * 组织销售组织编码
     */
    private String orgSalesOrganizationCode;

    /**
     * 组织销售渠道编码
     */
    private String orgSalesChannelCode;

    /**
     * 组织销售渠道编码
     */
    private List<String> orgSalesChannelCodes;

    /**
     * 组织销售部门编码
     */
    private String orgSalesDepartmentCode;

    /**
     * 客户编码
     */
    private String customerCode;

    /**
     * 客户地址
     */
    private String customerAddress;

    /**
     * 负责人ID
     */
    private String manageEmployeeId;

    /**
     * 货品ID
     */
    private String scItemId;

    /**
     * 货品组
     */
    private String scItemGroup;

    /**
     * 类目叶子节点
     */
    private String scItemLeafCategoryId;

    /**
     * 状态
     * 添加初始化：草稿
     * 单行编辑：完成
     */
    private Integer status;

    /**
     * 维度类型 1：业务员提报 2：部门提报 3：渠道提报 4：组织提报 5：业务维度提报
     */
    private Integer bizType;

    /**
     * 对应维度条件id
     */
    private String bizId;

    /**
     * 标记
     * 1:满足合同量
     * 2:未满足合同量的
     */
    private Integer contractDifferenceMoneyStamp;


    /**
     * 排序字段（contractDifferenceCount，contractSatisfaction，beforeContractSatisfaction）
     */
    private String dir;
    /**
     * 是否升序
     */
    private Boolean asc;

    private List<String> planIds;

    /**
     * 客户名称
     */
    private String customerName;
    /**
     * 货品名称
     */
    private String scItemName;
    /**
     * 地址名称
     */
    private String customerAddressName;

    private List<String> customerAddresss;

    private List<String> customerAddressIdList;

    private List<String> scItemIds;

    /**
     * 客户地址Id
     */
    private String customerAddressId;

    /**
     * 提报量是否大于0
     */
    private Integer monthCount;

    /**
     * 是否小程序提报
     */
    private Boolean appletSubmission;

}
